Generating Code and Documentation from Lightweight Abstract Grammars

نویسنده

  • Radu Grigore
چکیده

Abstract grammars are used in papers when toy languages are described. For the development of language processing tools it is also useful to have a short and explicit description of the abstract grammar of the language being processed. This paper presents a little language for expressing lightweight abstract grammars, a little language for writing templates that refer to the information in the abstract grammar, and the tool to process these. The tool generates, for example, code for the Abstract Syntax Tree (AST) data structures, a table view and a graphical view of the abstract grammar.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Automatic and lightweight grammar generation for fuzz testing

Blackbox fuzz testing can only test a small portion of code when rigorously checking the well-formedness of input values. To overcome this problem, blackbox fuzz testing is performed using a grammar that delineates the format information of input values. However, it is almost impossible to manually construct a grammar if the input specifications are not known. We propose an alternative techniqu...

متن کامل

The TTC 2014 FIXML Case: Rascal Solution

Rascal is a meta-programming language for source code analysis and transformation [1, 2]. Concretely, it is targeted at analyzing and processing any kind of “source code in the broad sense”; this includes importing, analyzing, transforming, visualizing and generating, models, data files, program code, documentation, etc. Rascal is a functional programming language in that all data is immutable ...

متن کامل

The TTC 2014 Movie Database Case: Rascal Solution

Rascal is a meta-programming language for source code analysis and transformation [2, 3]. Concretely, it is targeted at analyzing and processing any kind of “source code in the broad sense”; this includes importing, analyzing, transforming, visualizing and generating, models, data files, program code, documentation, etc. Rascal is a functional programming language in that all data is immutable ...

متن کامل

Towards a Text Generation Template Language for Modelica

The uses, needs, and requirements of a text generation template language for Modelica are discussed. A template language may allow more concise and readable programming of the generation of textual models, program code, or documents, from a structured model representation such as abstract syntax trees (AST). Applications can be found in generating simulation code in other programming languages ...

متن کامل

An Introductory Tutorial on JastAdd Attribute Grammars

JastAdd is an open-source system for generating compilers and other language-based tools. Its declarative specification language is based on reference attribute grammars and object-orientation. This allows tools to be implemented as composable extensible modules, as exemplified by JastAddJ, a complete extensible Java compiler. This tutorial gives an introduction to JastAdd and its core attribut...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2007